Method for setting boundary value, image signal processing method and apparatus, and printing apparatus

ABSTRACT

A method for setting a boundary value at a level of error diffusion, comprising a step of defining a characteristic curve on a coordinate plane defined by a first axis indicating a perceptually uniform scale and a second axis indicating grayscale values of original data. The perceptually uniform scale is given by a normalized one of chromatic tristimulus values to the power of ⅓. A boundary value at a level of error diffusion is determined based on the characteristic curve and is stored in a storage device. The boundary value is read from the storage device for error diffusion processing, and error diffusion is performed on input image data using the read boundary value.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a method for setting boundary valuesfor error diffusion, and to an image signal processing method andapparatus using the boundary values set by the method. The presentinvention further relates to a printing apparatus employing the imageprocessing technique.

2. Description of the Related Art

One conversion technique for multi-tone image data into data suitablefor binary representation indicating the on and off states of each pixelis an error diffusion method. In the error diffusion method, densityerror caused in binarization is stored and used for processingneighboring pixels. The error diffusion method allows densityinformation to be stored even after binarization. For example,approximately three to eight tonal levels per pixel can be stored.

Generally, in error-diffusing multi-tone image data, tones of theoriginal image data are equally divided into multiple parts, and aboundary value for error diffusion is then determined. In this approach,the visual change from a non-printing state (level 0) to the first level(level 1) is larger than the visual change from level 1 to the secondlevel (level 2).

If the visual change of tones between level 0 and level 1 and the visualchange of tones between level 1 and level 2 are equivalently handled,the former visual change becomes greater than the latter visual change.

Likewise, the visual change of tones between level 1 and level 2 becomesgreater than the visual change of tones between level 2 and level 3, andthe visual change of tones between level 2 and level 3 becomes greaterthan the visual change of tones between level 3 and level 4.

For example, in a 256-grayscale (8-bit) image, stepped tones in ahighlighted portion are more noticeable. One solution to this problem isdisclosed in Floyd, R. and Steinberg, L., “An Adaptive Algorithm forSpatial Gray Scale,” SID DIGEST, 1975. In this solution, the number oftones used for image processing is increased from 8 bits (256 tones) to10 bits (1024 tones) or 12 bits (4096 tones) to reduce visual change oftones.

However, this method causes a high-density portion without substantialtonal difference to be finely divided more than necessary. Thus, a largememory capacity is required.

SUMMARY OF THE INVENTION

In view of the foregoing technical problems, the present inventionprovides a technique for ensuring inter-level perceptual uniformity ofboundary values for error diffusion without increasing the memorycapacity required for image processing.

In one aspect of the present invention, a method for setting a boundaryvalue at a level of error diffusion includes defining a characteristiccurve on a coordinate plane, the coordinate plane being defined by afirst axis indicating a perceptually uniform scale and a second axisindicating grayscale values of original data, and determining a boundaryvalue at a level of error diffusion based on the characteristic curve.

In another aspect of the present invention, an image signal processingmethod comprising the steps of reading a boundary value at a level oferror diffusion from storing means, the boundary value being determinedbased on a characteristic curve defined on a coordinate plane, thecoordinate plane being defined by a first axis indicating a perceptuallyuniform scale and a second axis indicating grayscale values of originaldata, and performing error diffusion on input image data using the readboundary value.

In another aspect of the present invention, an image signal processingapparatus includes a storage unit that stores a boundary value at alevel of error diffusion, the boundary value being determined based on acharacteristic curve defined on a coordinate plane, the coordinate planebeing defined by a first axis indicating a perceptually uniform scaleand a second axis indicating grayscale values of original data, and anerror diffusion unit that error-diffuses input image data using theboundary value.

In another aspect of the present invention, a printing apparatusincludes a storage unit that stores a boundary value at a level of errordiffusion, the boundary value being determined based on a characteristiccurve defined on a coordinate plane, the coordinate plane being definedby a first axis indicating a perceptually uniform scale and a secondaxis indicating grayscale values of original data, an error diffusionunit that error-diffuses input image data using the boundary value, anda printing device that prints an image corresponding to theerror-diffused image data onto a printed medium.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A to 1D are tables showing chromatic tristimulus values of imagesobtained by printing patterns having evenly set boundary values asgrayscale values;

FIGS. 2A to 2D are tables showing a procedure for determining aperceptually uniform scale;

FIG. 3 is a graph showing the relationship between grayscale levels andthe normalized values;

FIG. 4 is a printer input/output characteristic curve for magenta;

FIG. 5 is an input/output characteristic curve used for secondconversion;

FIGS. 6A to 6D are tables showing set boundary values;

FIG. 7 is a printer input/output characteristic curve for magenta;

FIG. 8 is a printer input/output characteristic curve after secondnormalization;

FIG. 9 is a block diagram of a printer according to an embodiment of thepresent invention;

FIG. 10 is a block diagram of an image signal processing apparatusaccording to an embodiment of the present invention; and

FIG. 11 is a gamma curve as a modification of the characteristic curve.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Embodiments of the present invention will now be described. Portionsthat are not specifically described or illustrated in this document orthe drawings refer to the state of the art. The following embodimentsare merely examples, and the present invention is not limited to theseembodiments.

A method for setting boundary values in a case where input data D1having 256 tones (0 to 255) is error-diffused to generate pixel data D2having 6 levels (0 to 5) will now be described.

Typically, 256 tones are equally divided into five parts, and boundaryvalues at these parts are used as boundary values for error diffusion.Specifically, 256 tones are equally divided into five tonal regions,i.e., “0 to 51”, “51 to 102”, “102 to 153”, “153 to 204”, and “204 to255”, and the values of the pixel data D2 are determined based on thetonal region to which the input data D1 belongs.

For example, input data D1 having a tone value given by the tonal region“0 to 51” is binarized by error diffusion into binary data “0” or “1”.Input data D1 having a tone value given by the tonal region “51 to 102”is binarized by error diffusion into binary data “1” or “2”. Input dataD1 having a tone value given by the tonal region “102 to 153” isbinarized by error diffusion into binary data “2” or “3”. Input data D1having a tone value given by the tonal region “153 to 204” is binarizedby error diffusion into binary data “3” or “4”. Input data D1 having atone value given by the tonal region “204 to 255” is binarized by errordiffusion into binary data “4” or “5”.

A grid pattern has a certain area defined by a tone value defining aboundary value at each level, i.e., 51, 102, 153, 204, or 255. When theinput data D1 defining these grid patterns is error-diffused, a gridpattern defined by the value “1” of the pixel data D2, a grid patterndefined by the value “2” of the pixel data D2, a grid pattern defined bythe value “3” of the pixel data D2, a grid pattern defined by the value“4” of the pixel data D2, and a grid pattern defined by the value “5” ofthe pixel data D2 are obtained.

FIGS. 1A to 1D are tables of chromatic tristimulus values X, Y, and Z ofimages obtained by printing these grid patterns for each color (yellow,magenta, cyan, and black), respectively. FIGS. 2A to 2D show a procedurefor determining a perceptually uniform scale for each color based on thevalues X, Y, and Z.

For yellow, Z to the power of ⅓is calculated. For magenta and black, Yto the power of ⅓is calculated. For cyan, X to the power of 1/3 iscalculated. This calculation is shown in the second columns from theleft in FIGS. 2A to 2D.

Then, the values at level 0, i.e., X0^(1/3), Y0^(1/3), and Z0^(1/3), aresubtracted from the values at the individual levels. This calculation isshown in the third columns from the left in FIGS. 2A to 2D. Theresulting values are normalized with the value at level 5 for each colorbeing “1”. This calculation is shown in the rightmost columns in FIGS.2A to 2D.

Thus, the values at the individual levels of the original data aretransformed into values on the perceptually uniform scale. In thisembodiment, the perceptually uniform scale is defined as a normalizedone of X, Y, and Z to the power of ⅓.

FIG. 3 is a graph showing the relationship for magenta between thelevels and the values on the perceptually uniform scale. In FIG. 3, they-axis indicates the perceptually uniform scale (in this example,normalized Y to the power of 1/3), and the x-axis indicates the tonallevel. As can be seen from FIG. 3, for magenta, the value on theperceptually uniform scale at level 1 is approximately half of that atlevel 5.

Generally, original data input to printers is composed of additiveprimary colors, i.e., red (R), green (G), and blue (B), irrespective ofthe printing method, and the printers print an image with cyan (C),magenta (M), yellow (Y), and black (K). It is therefore necessary toconvert RGB data into CMYK data.

RGB data is converted into CMYK data using a three-dimensional (3D)lookup table. The conversion is typically performed assuming that alinear printer output characteristic curve is exhibited in a plot withthe perceptually uniform scale, and further conversion is performedbased on the actual printer output characteristic curve.

For example, a printer input/output characteristic curve for magentashown in FIG. 4 is obtained. After first conversion under the assumptiondescribed above, second conversion (gamma correction) based on acharacteristic curve shown in FIG. 5 is required. However, for example,the second conversion causes tonal compression of pixel data from “0 to131” to “0 to 51” and tonal expansion of pixel data from “242 to 255” to“204 to 255”.

Consequently, for example, a change of tones, which is to be convertedinto ascending tones “59”, “60”, “61”, “62”, “63”, and “64”, isconverted into stepped tones “23”, “23”, “24”, “24”, “25”, and “25”. Inthis way, this typical method causes noticeably stepped tones, andimpairs smooth tonal representation.

The present embodiment provides a method for determining a boundaryvalue at a level of error diffusion in view of the problems with thetypical method. In the method according to the present embodiment,boundary values at levels of error diffusion are determined so that theboundary values exhibit a substantially linear characteristic curve in acoordinate plane in which the y-axis indicates the perceptually uniformscale (i.e., a normalized one of X, Y, and Z to the power of 1/3) andthe x-axis indicates tone values of the original data.

For convenience of comparison with the typical method, the same gridpatterns are used. That is, a grid pattern defined by value “1” of thepixel data D2, a grid pattern defined by value “2” of the pixel data D2,a grid pattern defined by value “3” of the pixel data D2, a grid patterndefined by value “4” of the pixel data D2, and a grid pattern defined byvalue “5” of the pixel data D are used.

FIGS. 6A to 6D are tables of chromatic tristimulus values of imagesobtained by printing these grid patterns for each color (yellow,magenta, cyan, and black), respectively.

For each color, any one of the tristimulus values to the power of 1/3iscalculated. For example, for yellow, Z to the power of 1/3is calculated.For magenta and black, Y to the power of 1/3 is calculated. For cyan, Xto the power of 1/3is calculated. This calculation is shown in thesecond columns from the left in FIGS. 6A to 6D.

Then, for each color, the values at level 0, i.e., X0^(1/3), Y0^(1/3),and Z0^(1/3), are subtracted from the values at the individual levels.This calculation is shown in the third columns from the left in FIGS. 6Ato 6D. The resulting values are normalized with the value at level 5 foreach color being “1”. This calculation is shown in the fourth columnsfrom the left in FIGS. 6A to 6D.

FIG. 7 shows a printer input/output characteristic for magenta. In FIG.7, black circles indicate boundary values at the individual levels whenthe values are normalized with the values at level 5 being “1”. As shownin FIG. 7, five boundary values are substantially linear (a deviation iscaused by rounding).

Then, further normalization with the values at level 5 being “255” isperformed. This calculation is shown in the second columns from theright in FIGS. 6A to 6D. All digits are rounded (e.g., rounded off) tothe decimal point in the normalized values to determine boundary valuesat levels of error diffusion. This calculation is shown in the rightmostcolumns in FIGS. 6A to 6D.

FIG. 8 shows a printer input/output characteristic after the secondnormalization. As can be seen from the normalized input/outputcharacteristic curve shown in FIG. 8, almost all values may be usedwithout performing second conversion according to the actual printerinput/output characteristic curve. That is, pixel data assigned “0 to131” is allocated “0 to 131”, and pixel data assigned “242 to 255” isallocated “242 to 255”.

Consequently, a desired change of tones can be obtained. For example, achange of tones, which is to be converted into ascending tones “59”,“60”, “61”, “62”, “63”, and “64”, is converted into the desired order oftones, that is, “59”, “60”, “61”, “62”, “63”, and “64”. Once boundaryvalues at levels of error diffusion are determined according to thepresent embodiment, the perceptual tonal difference in the boundaryvalues between the levels before and after performing error diffusioncan be stored. Therefore, error diffusion does not cause largely steppedtones, resulting in smooth tonal representation.

A printer that performs error diffusion using the boundary valuesdetermined by the method described above according to an embodiment ofthe present invention will now be described in the context of an ink jetprinter. The printing apparatus according to the present invention isnot limited to an ink jet printer, and may be a wire dot printer, athermal transfer printer, or any other printing apparatus for use inprinting in units of dots.

FIG. 9 shows an ejection controller 10 disposed in the printer. Theejection controller 10 is a signal processor for converting print dataobtained from inside or outside the printer into grayscale data suitablefor ejecting ink droplets. The ejection controller 10 includes a colorconversion unit 12, a grayscale conversion unit 14, a head driving datageneration unit 16, and a system control unit 18.

The color conversion unit 12 converts print data composed of additiveprimary colors, i.e., red (R), green (G), and blue (B), into densitysignals for printer ink colors, i.e., cyan (C), magenta (M), yellow (Y),and black (K).

The converted density signals are supplied from the color conversionunit 12 to the grayscale conversion unit 14. The grayscale conversionunit 14 performs signal processing to reduce the number of tones of thedensity signals. The grayscale conversion unit 14 converts the densitysignals into grayscale data with a fewer tones while ensuring highreproducibility of mid-level tones of the original image. Thisconversion is performed using the error diffusion processing describedabove.

The grayscale conversion unit 14 reads boundary values at levels oferror diffusion from a storage device 14A, and performs error diffusionaccording to a known procedure. The boundary values are determined bythe method described above. The storage device 14A is, for example, asemiconductor memory, a magnetic storage medium, an optical storagemedium, or any other storage medium.

The storage device 14A may be fixed to the printer or may be removablewith respect to the printer. The storage device 14A may storeinformation other than the boundary values, e.g., firmware of theprinter, other programs, and setting information.

The head driving data generation unit 16 generates head driving data foractually driving a printhead 20. The printhead 20 is driven by the headdriving data to eject ink droplets from ejection units.

The system control unit 18 controls the overall printer. For example,the system control unit 18 detects a printing mode, and controls thecomponents according to the detected printing mode. The system controlunit 18 further controls driving of a feeding mechanism. The systemcontrol unit 18 is configured by a computer for controlling thecomponents according to predetermined firmware.

As described above, the ejection controller 10 does not need to performgamma correction, which is essential to typical printers. Typicalprinters require gamma correction as pre-processing and/orpost-processing of the grayscale conversion unit 14. The error diffusionprocessing used by the ejection controller 10 allows the same printeroutput characteristic curve (see FIGS. 7 and 8), and therefore gammacorrection is not required as pre-processing and/or post-processing ofthe grayscale conversion unit 14.

The circuit structure of the ejection controller 10 can therefore besimpler than that of traditional printers. Moreover, gamma correction,which largely changes the input/output characteristic, is not performed,and more exact grayscale conversion to the original data can thereforebe realized. Thus, a high-reproducibility printed image can be obtained.

The printer described above is configured such that print data suppliedfrom inside or outside the printer is error-diffused by the printeritself. However, error diffusion may be performed by an apparatusseparate from the printer, e.g., an image signal processing apparatus.For example, error diffusion may be used for applying various effects toan image or converting the image format.

FIG. 10 is a block diagram of an image signal processing apparatus 30according to an embodiment of the present invention. The image signalprocessing apparatus 30 has a known hardware configuration. The imagesignal processing apparatus 30 includes a central processing unit (CPU)32, a read-only memory (ROM) 34, a random access memory (RAM) 36, a harddisk drive (HDD) 38, a keyboard 40, a display 42, and a communicationport 44.

The CPU 32 executes a program using the RAM 34 as a work area. Theprogram is executed to implement various functions. For example, agrayscale conversion function is implemented as one of the effectsapplied to an image. The RAM 36 is used as an area for executing anoperation system and an application program.

The HDD 38 stores the operation system and the application program. TheROM 34 stores a basic input/output system (BIOS) program for input andoutput control with respect to peripheral devices.

The ROM 34 and the HDD 38 may also be used to store boundary values atlevels of error diffusion. The boundary values are determined by themethod described above. The boundary values are stored as a portion of adevice driver or a portion of an application program.

The boundary values may also be stored in a semiconductor memory(including a memory card), an optical disk, or any other storage medium.The boundary values may also be stored in an external storage device (orrecording medium).

The keyboard 40 is an input device used by a user to input instructionsor information to a computer. Another input device is, for example, amouse. The display 42 is an output device for displaying a userinterface designed using graphic components such as buttons and menu.

The user can instruct processing to be performed by the image processingapparatus 30 via the user interface view. The communication port 44performs communication between the CPU 32 connected thereto via aninternal bus and an ink jet printer.

The image signal processing apparatus 30 and the ink jet printer may beconnected via a network using a network protocol compatible device asthe communication port 44. The communication method may be wire orwireless communication.

The image signal processing apparatus 30 may be a general-purposecomputer, a portable information terminal device incorporating acomputer, a portable phone, a game device, an image pickup device, orany other electronic device.

The image signal processing apparatus 30 does not need to perform gammacorrection, which largely changes the input/output characteristic, andmore exact grayscale conversion to the original data can therefore berealized. Thus, the image conversion characteristic can be improved.

OTHER EMBODIMENTS

In the foregoing description, the characteristic curve by which boundaryvalues at levels of error diffusion are defined is linear (see FIG. 8).However, the characteristic curve is not necessarily linear. Forexample, gamma characteristics shown in FIG. 11 may be used.

In FIG. 11, a line G-1 plotted with square indications is a basiccharacteristic curve (linear), and a curve G-3 plotted with triangularindications is a characteristic curve by which highlighted portions withlow grayscale values are expanded and high-density portions with highgrayscale values are compressed. A curve G-4 plotted with crossindications is a characteristic curve by which the highlighted portionsand the high-density portions are expanded while storing change ofmid-level tones. A curve G-2 plotted with round indications is acharacteristic curve by which the highlighted portions are compressedand the high-density portions are expanded.

In the printer and image processing apparatus according to theembodiments described above, boundary values at levels of errordiffusion are determined based on one characteristic curve and arestored. However, a plurality of sets of boundary values determined basedon the plurality of characteristic curves shown in FIG. 11 may bestored. In this case, the set of boundary values corresponding to acharacteristic curve specified based on the details of image processingor a characteristic curve selected by the user can selectively be usedfor error diffusion.

1. A method for setting a boundary value at a level of error diffusion,comprising: defining a characteristic curve on a coordinate plane, thecoordinate plane being defined by a first axis indicating a perceptuallyuniform scale based on one of chromatic tristimulus values obtained byprinting grid patterns, using a printing apparatus, the grid patternshaving a certain area defined by a tone value defining a boundary valueat each level for each color and a second axis indicating grayscalevalues of original data; determining a boundary value at a level oferror diffusion based on the characteristic curve; and printing,utilizing a printing apparatus, an image corresponding to theerror-diffusion onto a medium.
 2. An image signal processing methodcomprising the steps of: reading a boundary value at a level of errordiffusion from storing means, the boundary value being determined basedon a characteristic curve defined on a coordinate plane, the coordinateplane being defined by a first axis indicating a perceptually uniformscale based on one of chromatic tristimulus values obtained by printinggrid patterns, using a printing apparatus, the grid patterns having acertain area defined by a tone value defining a boundary value at eachlevel for each color and a second axis indicating grayscale values oforiginal data; error-diffusing input image data using the read boundaryvalue; and printing, utilizing a printing apparatus, an imagecorresponding to the error-diffusion onto a medium.
 3. An image signalprocessing apparatus comprising: a storage unit that stores a boundaryvalue at a level of error diffusion, the boundary value being determinedbased on a characteristic curve defined on a coordinate plane, thecoordinate plane being defined by a first axis indicating a perceptuallyuniform scale based on one of chromatic tristimulus values obtained byprinting grid patterns having a certain area defined by a tone valuedefining a boundary value at each level for each color and a second axisindicating grayscale values of original data; and an error diffusionunit that error-diffuses input image data using the boundary value.
 4. Aprinting apparatus comprising: a storage unit that stores a boundaryvalue at a level of error diffusion, the boundary value being determinedbased on a characteristic curve defined on a coordinate plane, thecoordinate plane being defined by a first axis indicating a perceptuallyuniform scale based on one of chromatic tristimulus values obtained byprinting grid patterns having a certain area defined by a tone valuedefining a boundary value at each level for each color and a second axisindicating grayscale values of original data; an error diffusion unitthat error-diffuses input image data using the boundary value; and aprinting device that prints an image corresponding to the error-diffusedimage data onto a printed medium.